package wujinye.com.utils;

import wujinye.com.constant.Const;

public class PageUtil {

    /**
     * 计算用户总的页数（一页展示5个用户）
     *
     * @param totalPage
     * @return
     */
    public static long getTotalUserPage(long totalPage) {
        return totalPage % Const.MAX_USER_PAGE_SIZE == 0 ? totalPage / Const.MAX_USER_PAGE_SIZE : totalPage / Const.MAX_USER_PAGE_SIZE + 1;
    }

    /**
     * 计算文章总的页数（一页展示3篇文章）
     * @param totalPage
     * @return
     */
    public static long getTotalArticlePage(long totalPage){
        return totalPage % Const.MAX_ARTICLE_PAGE_SIZE == 0 ? totalPage / Const.MAX_ARTICLE_PAGE_SIZE : totalPage / Const.MAX_ARTICLE_PAGE_SIZE + 1;
    }

    /**
     * 计算会议总的页数（一页展示3个会议信息）
     * @param totalPage
     * @return
     */
    public static long getTotalMeetingPage(long totalPage){
        return totalPage % Const.MAX_MEETING_PAGE_SIZE == 0 ? totalPage / Const.MAX_MEETING_PAGE_SIZE : totalPage / Const.MAX_MEETING_PAGE_SIZE + 1;
    }

    /**
     * 由当前页码，计算起始页面的值
     *
     * @param currentPage
     * @return
     */
    public static long getStartPage(long currentPage) {
        long start = currentPage % Const.PAGE_COUNT == 0 ? currentPage / Const.PAGE_COUNT : currentPage / Const.PAGE_COUNT + 1;
        return (start - 1) * Const.PAGE_COUNT;
    }

    /**
     * 计算末尾的页码
     *
     * @param totalPage
     * @param currentPage
     * @return
     */
    public static long getEndPage(long totalPage, long currentPage) {
        long startPage = getStartPage(currentPage);
        if (startPage + Const.PAGE_COUNT <= totalPage) {
            return startPage + Const.PAGE_COUNT;
        } else {
            return totalPage;
        }
    }
}
